1. Field of the Invention
This invention is related in general to the field of data storage systems. In particular, the invention consists of a method for initializing data storage devices.
2. Description of the Prior Art
In FIG. 1, a computer storage system 10 includes host servers (“hosts”) 12, data processing servers 14, data storage systems 16 such as redundant arrays of inexpensive/independent disks (“RAIDs”), and a data communication system 18. Requests for information traditionally originate with the hosts 12, are transmitted by the communication system 18, and are processed by the data processing servers 14. The data processing servers retrieve data from the data storage devices 20 over a second data communication system 22 and transmit the data back to the hosts 12 through the first communication system 18. Similarly, the hosts 12 may write data the to the data storage systems 16. The Data Processing Server 14 may include an individual computing device or a cluster of computer processors 24.
The communication system 18 may be a communication bus, a point-to-point network, a fiber channel-arbitrated loop, or other communication scheme. In a small computer systems interface (“SCSI”) communication scheme, the hosts 12 include initiators 26 and the data storage devices 20 are logical units referred to as open devices. These logical units may be hard disk drives, tape cartridges, magneto-optical devices, or other memory devices.
In this exemplary computer storage system 10, each open device 20 includes a metadata track containing virtual product data, formatting status, and persistent reservation information. During a boot process, the data processing server 14 performs an initial microcode load (“IML”) that includes initializing each open device 20 and loading metadata information into logical unit control blocks 28 (“LUNCB”) to expedite the selection process of open devices. Each LUNCB controls access to its corresponding open device, only allowing one initiator 26 to access the device at a time. As the number of open devices increases, the time required for the IML also increases and quickly becomes prohibitive. Accordingly, it is desirable to allow the IML to complete prior to all the data storage devices being properly staged, i.e., copying the metadata information to the corresponding LUNCB 28.
One approach is to delay copying the metadata information for each device 20 until the device is first selected by an initiator 26. However, the first input/output request to the device would be delayed by the time necessary to copy the data to the LUNCB 28. Another solution is to run a background task that would methodically stage each device. However, this approach also leads to requests from initiators for devices that have not been properly staged. Either way, a significant delay is introduced into the data communication process. Accordingly, it is desirable to have a system of staging the data storage devices 20 using a priority scheme that reduces the number of requests for devices that have not yet been staged and reduces the associated delay.